/*
Author: Marek Skrajnowski
Date: 09.11.2011

Memory Manager Singleton class.
*/

#ifndef TEST_DATA_H
#define TEST_DATA_H

#include <vector>

template<size_t dataSize> struct TestData {
	unsigned char data[dataSize];

	bool operator== (const TestData& other) {
		unsigned int i;
		for(i=0; i<dataSize && data[i] == other.data[i]; ++i);
		return i == dataSize;
	}

	void random() {
		for(int i=0; i<dataSize; ++i) {
			data[i] = rand();
		}
	}
};
	
typedef TestData<8> SmallData;
typedef TestData<32> MediumData;
typedef TestData<128> LargeData;

typedef std::vector<unsigned int> IndexVector;

IndexVector* shuffle(size_t size);

#endif